23

» WarCraft 3 / Область выделения юнита

Похожие вопросы:

ответ
Моделлинг FAQ, «Создание моделей», §8
...можно попробовать рассчитать границы для всех анимаций. Для этого в Warcraft 3 Model Editor используйте функцию Calculate Extents (рассчитать границы) в меню Edit (Правка).

23

» WarCraft 3 / Перенос анимации с одной модели на другую

Похожие вопросы:

ответ
XGM Bot:
Похожие вопросы:

ответ
Можно попробовать пересадить мясо на скелет рыцаря или всадника на волке.
Через мдлвиз. Но успокоительного потребуется немало ))
ответ
работает только с моделями, у которых одинаковый скелет
таких немного


23

» WarCraft 3 / Нестандартный интерфейс карты.

Похожие вопросы:

ответ
Никого не слушай учись на картах близов, там есть все.
Смотри как устроены модели, эфекты и текстуры, особенно ланшафт, только не смотри как устроены здания как декорации(построение города), там фантазия их подвела.

23

» WarCraft 3 / Заряды предметов

Похожие вопросы:

ответ
Zeuz, руна пустышка является предметом а значит хэндлом
надо просто не забывать обнулять переменные
можно ещё удалить её перед обнулением если так хочешь
утечки возникают только при криворукой работе с хэндлами
если так хотите избавится от утечек то лучше почитайте статьи вместо того чтобы строить костыльную меху
ответ
Заряды могут повышатся только триггерно, сами предметы не "складываются в стопочку", вот где ты их складываешь там и ставь им хп, есть функция SetWidgetLife.
Если для вас слишком сложно при получении предмета юнитом проверить что это за предмет, а так же наличие такого же предмета в инвентаре, а затем повысить кол-во зарядов и здоровья, то учите статьи...
ответ
datar1231, вот держи карту.
Когда будешь добавлять предмет, не забудь запретить его применение (в редакторе объектов: Нужно задействовать = Нет) и вообще удалить ему способность.
ответ
Steal nerves:
ответы
Как объединить зелья лечения в одно с зарядом, если герой имеет одно в инвентаре и поднимает второе?
обычно используют "событие - юнит получает предмет", И на предмет, который вы получаете, ссылается переменная, которая называется item being manipulated. А юнит, который получает итем - Triggering Unit. Вы можете с помощью этой переменной итема узнать тип, сравнить. Потом циклом пробегаете по слотам (от 1 до 6), тут вся суть в одной команде триггерной (item in slot X, итем в слоте Х) и проверяете есть ли такой же итем (не забываем делать проверки, на то что этот предмет не равен item being manipulated и сравниваете не одинаковые ли типы). Если есть такой же (находите тот же тип что и item being manipulated), то от item being manipulated берете заряды и прибавляете к зарядам существующего, а потом item being manipulated удаляете. Недостаток: при заполненном инвентаре такая штука не будет работать.Не хватает свободного места.
код
цикл А от 1 до 6
if тип итема (item being manipulated) РАВНО тип итема (item in slot А) and item being manipulated НЕ РАВНО item in slot А then проверяете
set k = Charges remaining in ( item being manipulated) + Charges remaining in ( item in slot А) складываете заряды
Set charges remaining in ( item in slot А) to ( k) устанавливаете кол-во зарядов
Remove Item (item being manipulated) удаляете
endif
Есть гуишная проверка на наличие итема определенного типа в инвентаре, но она утечна. И лучше циклом прогонять.
Кстати выше пример, там вот дропают итем, зачем? чтобы проверить есть ли такой же итем. А то мб проверка на наличие итема определенного типа в инвентаре найти подобранный итем. А нам нужно знать, что есть еще один, кроме подобранного. Поэтому дропают. Только не понятно зачем создаете новый итем.
Проверка, на то что подобранный предмет имеет зарядов больше 0, говорит нам о том что это не обычный предмет.
есть статьи
Как зелье с зарядом разделить, если игрок перекладывает зелье с зарядом в другую ячейку инвентаря, если возможно, то разделение происходить должно только при нажатии какой-то клавиши?
можно перекладывать в другой слот. для этого ловят приказ. Короче смотрите системы CCS
там создают новый такой же предмет, и выделяют кол-во зарядов, деля поровну например. Абилкой например, попробуй сделать целевую активную абилку с целью предмет, указывай на инвентарь и дели.
Как это можно сделать покороче для множества разных типов предметов?
всмысле покороче? сделать под одну группу? есть же классификация. Я вот делаю так, что все предметы, которые с зарядами, должны иметь классификацию "с зарядами". Не помню точно как называется класс итемов.
Как правильно реализовать в инвентаре 7 слот?
если у героя заполнен инвентарь, то он может подобрать руну. Вот в доте система скрещивания. То же самое можно сделать и с зарядами. На земле у него лежат руны, при подборе руна исчезает. Но мы проверяем слоты, есть ли такой итем. Если есть, прибавляем заряды к существующему. Иначе создать новый. При дропе итема, оригинал подменяет снова на руну. В руну можно передать значения зарядов.
А также ограничения какие-то на количество зарядов нужно ставить или сама система выше какой-то планки не даст собирать?
до такого не доходил.
скинул примеры (хотя многие дурацкие, но делал здесь хгм в качестве ответов)
вот еще одна система hh
ответ
Если колчество исполнений триггера (в котором складываются предметы) = 1, то вывести сообщение.

23

» WarCraft 3 / Книга заклинаний

Принятый ответ
Похожие вопросы:

ответ
Если я не ошибаюсь, это происходит из-за подгрузки способностей в той самой книге. Можно дать эту способность какому-нибудь юниту и поместить его на игровом поле, что подгрузка этих способностей происходила во время инициализации карты.
ответ
предмет это просто иконка которая содержит способности
книга заклинания это способность
и редактировать нужно способность "книга заклинаний"
или создать на её основе новую способность "моя книга заклинаний"
а потом у предмета просто указать способность "моя книга заклинаний"
если не хватает знаний то их можно пополнить в статьях
думаю первых 200 статей хватит чтобы создать несложную карту
ответ
Пассивки в книге заклинаний работают, даже если запретить доступность самой книги для игрока.Так что да.
ответ
Rасательно вопроса как добавить в книгу заклинаний больше 12 скиллов - можно добавить книгу в книгу и новой книге сделать ещё несколько скиллов и ещё 1 или несколько книг. В каждую книгу можно ещё по книге и так далее.
Главное - ID приказа у всех книг должны быть разные.

Иконки способностей кольца, когтей и т.д. отображаться не будут, ты можешь отображать скиллы-пустышки, а (только это на всякий случай предложенный вариант!) герою выдавать сам предмет, предварительно вытряхнув из его инвентаря все предметы на пол. После добавления в пустой инвентарь нужного предмета, например когтей - заполняем ещё 4 слота предметами-пустышками, затем даём предмет со способностью "предметы герой", у этой способности для предмета должна стоять галочка "относится к предмету", обязательно. После этого инвентарь снова очистится уже сам, однако добавленный предмет на атаку будет иметь эффект. После чего можно подобрать с пола предметы героя и отдать ему триггерно.

Почему не стоит добавлять способность когтей триггерно? - потому что 2 добавленные одинаковые способности не суммируются. Два одинаковых предмета же суммируются.
Есть ли минусы у вышеописанного способа? - скорее всего удалить добавленный бонус нормально не выйдет. Придётся вытряхать инвентарь удалением способности "предметы герой" у самого героя, а это тот ещё геморрой -восстановить потом всё, что должно было остаться неудалённым.
ответ
Всем спасибо. Попробую создать через погрузку, должно выглядеть ок.

23

» WarCraft 3 / Как сделать затемнение экрана

Принятый ответ
Похожие вопросы:

ответ
Спецэффекты - advanced filter - белая маска, начиная со цвета 0 0 0 и 50% прозрачности и заканчивая таким же.
ответ
есть триггер Спецэффекты - Fade Filter
ответ
Зайти в кампанию и посмотреть. Не?

23

» WarCraft 3 / Вопрос о кинематиках

Похожие вопросы:

ответ
в чем редактор вкв3 отличается от редактора ск2 - к сожалению, в вк3-шном эдиторе не удастся отловить все данные.
если ты скажешь, что конкретно делает твой спелл, тебе могут подсказать более легкий вариант исполнения
насчет спецэффектов - утечка решается просто
  1. создаешь точку, если спец на земле. если спец на юните, точка не требуется.
  2. собсно воспроизводишь спец
  3. и сразу его удаляешь. спец удалится тогда, когда доиграет до конца его анимация
  4. кастом скриптом удаляешь точку, если 1 часть 1 пункта актуальна

23

» WarCraft 3 / Молния

Похожие вопросы:

ответ
Карта с нестандартными молниями и описанием. Смотреть Readme в менеджере импорта.
Если тебе типа фиолетовой молнии рубика надо, то вот есть вроде этого
В эффектах молнии пишешь PISU
В менеджере импорта путь splats\lightningdata.slk
ответ
идем читать статьи
и не п... врем что читали, потому что в противном случае имели бы представление про триггеры и что с ними делать
сверху есть кнопочка - нажимаем и читаем
если не понятен алгоритм - работаем с группой юнитов, союзников лечим, врагов - дамажим, делаем анимацию снаряда
а как превысить лимиты РО - shift + enter
и в поиске по вопросам это тоже есть

23

» WarCraft 3 / Сообщение игрока

Похожие вопросы:

ответ
C101Nine:
"Извлекаешь подстроку" уточни как пожалуйста.
примерно так
ответ
Нужно использовать "Игрок - Player Name" внутри выводимой строки (Строка составляется из нескольких частей при помощи Concatenate Strings). Если нужно вставить имя боевой единицы, используй "Боевая единица - Unit Name" и т.д.
ответ
Решил проблему следующим путем: при несовпадении данных в Memory, заставляем читера выделить специального скрытого в тумане войны юнита, а в другом триггере по событии выделения пишем, что GetTriggerPlayer() - МХшник, и только потом кикаем его.
quq_CCCP:
Для бана нужна работа с хост ботом
Ты неправильно понял. Если люди по Гарене играют, то они должны знать, что игрок отключается по неуважительной причине, чтобы сразу его забанить и потом не париться с ним. Бан-то локальный в Гарене, не то что на хост-боте.
ответ
один триггер
по одному событию на каждого игрока
в действе передавать "Переключающий игрок" вместо "игрок 1 красный".

23

» WarCraft 3 / Отследить стан

Похожие вопросы:

ответ
аналогичная болезнь ставить несколько антивирусов полагая что они защитят вместе лучше...
  1. используйте что-то одно
  2. ???
  3. профит
ответ
Убери Wait во 2 триггере, во-первых.
В 1 триггере поставь действие TurnOn (включить) триггер 2 (на втором триггере нажми правой кнопкой и выбери изначально включён. У тебя вроде как действие Run, я так понимаю, просто у меня на англ WE.
Во втором триггере поставь событие Время Pereodic 0.02 сек.
Сделай условие, если в точке твоего двигаемого юнита тип проходимости Ходьба, то: дальше выключает этот триггер и делаешь другие свои действия, ьам звук добавляешь и т.д.
А вообще, судя по скринам твоих триггеров, ты ещё очень далёк от создания даже триггерных способностей.
Советую, лучше изучи какие бывают События, Действия и Условия, и что они делают.
Мышкоблудка:
Такие сложные вещи лучше наверно на jass делать, хоть это сложнее будет
Ты, конечно, колоссально помог в вопросе, но я открою тебе секрет: ничего тут сложного, на ГУИ изи делается, как и большинство других скилов.

23

» WarCraft 3 / Превращение героя

Похожие вопросы:

ответ
По ходу нужно будет писать систему, которая при юзе спелла будет создавать нужного юнита в той же точке и с теми же предметами и способностями , что были до. Триггеры )
ответ
как привязать переменную к существу
хэш,кс,структуры
выбор обширен
все варианты расписаны в статьях
ответ
~4okak:
Сам спросил - сам ответил.
ответ
Если юнит под баффом "чума" - добавить в отряд Чума
Иначе - удалить из отряда Чума
Триггер
С. Таймер Чума
Отряд выбрать юнитов Чума
Если юнит умер
Д. создать юнита в позиции выбранного юнита.

23

» WarCraft 3 / движение через ( X . y )

Похожие вопросы:

ответ
Нашел проблему!
Зайди в переменную udg_Group и поставь разрядность массива больше одного (Вернее столько, сколько нужно). Юниты дальше и не идут, т.к. групп с индексом больше единицы просто не существует.

23

» WarCraft 3 / Проблема с анимацией

Похожие вопросы:

ответ
nvc123:
Nyanta, для начала дебаг сделать как написано в статье
Сделал. Триггер работает как нужно. При входе всегда пишет "Вход!", при выходе - "Выход!". Порядок текста не меняется.
В общем, проблема, почему-то, была в названии анимации. Открыл модель через MdlVis и назвал анимации "родными" словами Stand, Walk, Death. Стало работать как надо.
Спасибо Rare за
Rare:
ставь скорость анимации на 0%
И nvc123 за то, что натолкнул на мысль этим)
nvc123:
конфликт триггеров,неправильный проигрыш анимаций
ответ
Чтобы при подборе меча игрались анимации для меча - можно укзать
Анимация - add animation tag to unit - first например. Будут проигрываться attack first, walk first и т.д. При отсутствии таковых будут играться бестеговые анимации.
Теги не какие попало добавляются, насколько я помню.
Используемые теги: fast, victory, first, second,third, fourth, fifth, swim, ready, alternate.
ответ
Свершылось... Заработало...
Вот оно.

Описание проверки:
  • проверил в редакторе, он просто вылетает при попытке настройки в РО;
  • переконвертировал в .mdl и осмотрел, все норм;
  • открыл в War3ModelEditore, удалил лишние текстуры, материалы, настроил анимации геосетов;
  • профит.
Если кто не верит, вот скрин.
ответ
Ошибка при работе с MdlVis. Попробуй открыть модель в версии 1.40, там должно изменение видимости в ключевых кадрах должно заработать. Однако советую сделать копию модели, т.к. 1.40, если не изменяет память, ломает уже настроенную видимость.
ответ
Лучше проверить, присоединён ли он к тем же костям, что и соседние вершины. Если нет — присоединить. Если да, то как сказали Melissa и nvc123.

23

» WarCraft 3 / как для модели сделать анимации?

Принятый ответ
Похожие вопросы:

ответ
Читаем статьи, учим русский, делаем сами.
Можете попробовать обратиться суда, если вообще не получается.
ответ
есть у нас анимации attack 1, attack 2, attack 3, при этом 1 это атака мечем, 2 - двуручным, 3 - из лука
при стандартном раскладе юнит будет рандомно выбирать анимацию, но мы сделаем так - добавим в название анимациям такие приписки:
attack 1
attack gold
attack lumber
теперь должна быть только 1 анима, добавляем гуишным действием тег
и все, у нас юнит бьет анимацией с двуруча
ответ
советую переименовать модель\заребутить комп
текстуры стандартные юзал, я так понимаю
ответ
это Q/A
тут разрешены только вопросы
в следующий раз за заявки типа "сделайте мне что либо" пойдут варны
ответ
Naadir:
Вы там сговорились, что ли? Одни и те же вопросы на протяжении месяцев. Посмотрите наработку, которая прикрепляет одного юнита к дргому, усовершенствуйте, переделайте под себя. Там всё открыто для редактирования, почему вы её не пользуетесь?
он не это имеет ввиду.
Крч чтобы модель в колеснице типо поворачивалась необходимо сделать кость Turet (точного названия увы не помню, посмотри в модели Сторожевое древо) Так вот эта кост отвечает за поворот ее в сторону атакованой цели, думаю в твоем случае данная кость должна быть в ногах у лучника колеснице, тогда он будет полностью поворачиваться к цели, както так

23

» WarCraft 3 / Как сделать таблицу

Похожие вопросы:

ответ
Ige, да о чем вы говорите. ИМХО, самое оптимальное предложение содержится в 3 комментарии.
И еще тут много лишних функций. Да и просто первый признак jass - отсутствие бж за исключением дебага( хоть мои слова кажется трепом и выпендрежем, но без чистого скрипта на нативах.... )
ответ
Вам сюда, господин хороший. Там есть ответы, практически, на все ваши вопросы.
ответ
Просто , нужно тогда будет удалять старый плавающий текст с тем значением , либо там есть замена , ну если вообще не сможешь можешь кинуть мапу , сделаю быстренько .
ответ
Ну ты точно сделаешь карту? Если не знаешь элементарного...
Event units entres in rect (вроде так в гуях)
Как только юнит принадлежащий конкретному игроку зашел в регион, тут же добавляем к переменной целочисленного типа + 1, все.
Можно заносить юнитов которые вошли в область в группу юнитов, чтобы изключить при повторном вхождении в область срабатывания счетчика, юнит то один и тот же, а в условии триггера проверять что юнита который вошёл в область нет в группе юнитов.
ответ
zlowar:
То есть дебаф должен всегда обновляться.)
Зачем ты делаешь триггерный дебафф? В дефолте так устроено, что дебафф заменяется, так вешай же дефолтно

23

» Администрация XGM / Не могу зайти на сайт

Похожие вопросы:

ответ
В проекте файл карты не сохранился.
ответ
Напиши в личку те данные что у тебя есть или любым другим приватным способом связи, посмотрю, что смогу сделать.

23

» WarCraft 3 / Помогите найти карту

Похожие вопросы:

ответ
не знаю даже поищи СТАРЕЙШИХ ИГРОКОВ У ВАРКРАФТА и попроси у них все карты которые они имеют
а дальше пороверь все карты и найди её если не найдёш значит она тебе приснилась)
ответ
ответ
Да, это Starcraft hybrids, если скриншоты похожи на какой-либо фрагмент из этого видео.
ответ
закрыт по таймауту

23

» WarCraft 3 / ИИ не выполняет триггер

Похожие вопросы:

ответ
Объясню, почему я удалил код: после проведённого за кодом времени, я понял, что сильно погорячился, задав такой глупый вопрос. Стоило отдохнуть, проветрить голову, и решение нашлось. Тем, кто столкнулся с хоть самую малость, но похожей проблемой, дам совет: всегда проверяйте соответствия заклинаний, написанных в коде jass (CTRL + D, если кто не знает, как узнать id заклинания) и ,конечно, сам синтаксис. Также посоветую не утраивать "свалку" в коде, как это сделал я. В общем, если кому интересно, как я решил проблему, пишите - расскажу или даже помогу если у вас она схожая.(Всё дело во внимательности)...
Сброшу код триггера таким, каким я его хотел видеть изначально:
function MU_Check_lvl_four takes nothing returns boolean
    if ( not ( GetUnitAbilityLevelSwapped('A011', udg_Akame_Killer) == 4 ) ) then
        return false
    endif
    return true
endfunction

function MU_Check_lvl_three takes nothing returns boolean
    if ( not ( GetUnitAbilityLevelSwapped('A011', udg_Akame_Killer) == 3 ) ) then
        return false
    endif
    return true
endfunction

function MU_Check_lvl_two takes nothing returns boolean
    if ( not ( GetUnitAbilityLevelSwapped('A011', udg_Akame_Killer) == 2 ) ) then
        return false
    endif
    return true
endfunction

function MU_Check_lvl_one takes nothing returns boolean
    if ( not ( GetUnitAbilityLevelSwapped('A011', udg_Akame_Killer) == 1 ) ) then
        return false
    endif
    return true
endfunction

function MU_Second_Conditions takes nothing returns boolean
    if ( not ( UnitHasBuffBJ(GetEventDamageSource(), 'B008') == true ) ) then
        return false
    endif
    if ( not ( GetEventDamageSource() == udg_Akame_Killer ) ) then
        return false
    endif
    return true
endfunction

function MU_Start_Conditions takes nothing returns boolean
    if ( not ( UnitHasBuffBJ(GetAttacker(), 'B008') == true ) ) then
        return false
    endif
    if ( not ( GetAttacker() == udg_Akame_Killer ) ) then
        return false
    endif
    return true
endfunction

function Trig_MU_Conditions takes nothing returns boolean
    if ( not MU_Start_Conditions() ) then
        return false
    endif
    return true
endfunction

function MU_Venum_Check takes nothing returns boolean
    if ( not ( udg_MU_Venum_counter == 2 ) ) then
        return false
    endif
    return true
endfunction

function MU_del takes nothing returns nothing 
    if ( MU_Check_lvl_one() ) then
        call SetPlayerAbilityAvailableBJ( true, 'A00X', GetOwningPlayer(GetEventDamageSource()) )
        call UnitRemoveAbilityBJ( 'A00X', GetEventDamageSource() )
    else
        if ( MU_Check_lvl_two() ) then
            call SetPlayerAbilityAvailableBJ( true, 'A00U', GetOwningPlayer(GetEventDamageSource()) )
            call UnitRemoveAbilityBJ( 'A00U', GetEventDamageSource() )
        else
            if ( MU_Check_lvl_three() ) then
                call SetPlayerAbilityAvailableBJ( true, 'A00Y', GetOwningPlayer(GetEventDamageSource()) )
                call UnitRemoveAbilityBJ( 'A00Y', GetEventDamageSource() )
            else
                if ( MU_Check_lvl_four() ) then
                    call SetPlayerAbilityAvailableBJ( true, 'A013', GetOwningPlayer(GetEventDamageSource()) )
                    call UnitRemoveAbilityBJ( 'A013', GetEventDamageSource() )
                else
                    call DoNothing(  )
                endif
            endif
        endif
    endif
endfunction


function Trig_MU_Actions takes nothing returns nothing
    call DestroyTrigger(udg_MU_trig)
    set udg_MU_Venum_counter = GetRandomInt(1, 5)
    set udg_MU_TG = GetAttackedUnitBJ()
    if ( MU_Venum_Check() ) then
        if ( MU_Check_lvl_one() ) then
        call UnitAddAbilityBJ( 'A00X', udg_Akame_Killer )
        call SetPlayerAbilityAvailableBJ( false, 'A00X', GetOwningPlayer(udg_Akame_Killer) )
    else
        if ( MU_Check_lvl_two() ) then
            call UnitAddAbilityBJ( 'A00U', udg_Akame_Killer )
            call SetPlayerAbilityAvailableBJ( false, 'A00U', GetOwningPlayer(udg_Akame_Killer) )
        else
            if ( MU_Check_lvl_three() ) then
                call UnitAddAbilityBJ( 'A00Y', udg_Akame_Killer )
                call SetPlayerAbilityAvailableBJ( false, 'A00Y', GetOwningPlayer(udg_Akame_Killer) )
            else
                if ( MU_Check_lvl_four() ) then
                    call UnitAddAbilityBJ( 'A013', udg_Akame_Killer )
                    call SetPlayerAbilityAvailableBJ( false, 'A013', GetOwningPlayer(udg_Akame_Killer) )
                else
                    call DoNothing(  )
                endif
            endif
        endif
    endif
    set udg_MU_trig = CreateTrigger()
    call TriggerRegisterUnitEvent( udg_MU_trig, udg_MU_TG, EVENT_UNIT_DAMAGED )
    call TriggerAddCondition( udg_MU_trig, Condition( function MU_Second_Conditions ) )
    call TriggerAddAction( udg_MU_trig, function MU_del )
    else
        call DoNothing(  )
    endif
endfunction

//===========================================================================
function InitTrig_MU takes nothing returns nothing
    set gg_trg_MU = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_MU, EVENT_PLAYER_UNIT_ATTACKED )
    call TriggerAddCondition( gg_trg_MU, Condition( function Trig_MU_Conditions ) )
    call TriggerAddAction( gg_trg_MU, function Trig_MU_Actions )
endfunction
Суть триггера:
Имеется способность с четырьмя уровнями. На каждом уровне урон способности разный, а шанс срабатывания всегда 25%. При атаке герой, имеющий такую способность имеет шанс (25%) на отравление противника.
Переменная udg_Akame_killer равносильна GetEventDamageSource()
P.S. Возможно кому-то даже пригодится этот код... Сделан полнейшим неумехой в плане jass, так что не судите строго!
ответ
Лимит операций примерно 4 к. А у тебя тут поболее 16к.
Обойти лимит операций можно только разнеся действия в разные потоки. К примеру для через таймер.
ответ
Ну только триггерные системы отрядов, была такая...
Вот пример ссылочка
Были и другие, поиск в помощь.
Вот еще ссылка
ответ
quq_CCCP:
Спасибо, понял что надо создавать форс единожды, чтобы утечек не было
Мдаа уж, оказывается все дело в том, что забыл поставить исходные позиции другим игрокам, хорошо хоть проверить догадался, засиделся за редактором
ответ
~8gabriel8:
Сделал через Integer Comparsion, где количество нужных юнитов, рыбацких лодок, в области над магическим кругом больше 0.

23

» WarCraft 3 / Рельеф

Похожие вопросы:

ответ
Есть функции определения текстуры земли и замены текстуры земли. В GUI это, вроде, в разделе «Окружение». Соответственно, нужно в каждой ячейке сетки тайлсетов на карте проверять текстуру и заменять на соответствующую из другого тайлсета. Правда, я не помню, какой шаг у этой сетки. И склоны не удастся заменить.
ответ
Можно запоминать все деформации и потом вызывать их заново, но с отрицательной амплитудой чтобы они гасили предыдущие.
С одной вроде работает, но надо будет заносить их в массивы и т.д.

23

» WarCraft 3 / Как сделать победу при достижении 100 убийств?

Похожие вопросы:

ответ
Реализовать триггерно. Если это не очевидно - значит твои навыки не позволяют сделать этого. Однако спелл простой - поищи где-нибудь в заклинаниях на заказ или на хайве.

23

» WarCraft 3 / Анимации

Похожие вопросы:

ответ
Это код аттачмента в модели.
Добавлять надо свой через war3modeleditor, и там указывать нужные пути и видимость (т.е. в каком диапазоне кадров этот аттач видно)
Вот охотничий зал, аттач BirthLink
Видимость у него включается (1) в кадре 3333, когда начинается анимация birth, и выключается (0) в кадре 63333 где она заканчивается
ответ
Решено!
ответ
Эти анимации - для приложения. Т.е. юниту, которому даёшь ауру пишешь в РО в "Анимации - Приложения" medium/large и др.
ответ
Отлавливать улучшение и делать триггерную анимацию. Способов достаточно много и без редактирования модели.
ответ
Без работы над памятью - никак. итемы не имеют подобных функций, доступных картоделу

23

» Администрация XGM / Как создать статью?

Похожие вопросы:

ответ
да
только с файлами точно неизвестно, сломал ли хеллкор всё или нет. кстати, перенос хеллкор тоже мог сломать, я его интродюсил в в7 (точнее гада пинал) =)

23

» WarCraft 3 / Старые модели.

Похожие вопросы:

ответ
глянь тут-http://wcunderground-downloads.blogspot.ru/p/blog-page.html
ответ
Нашёл решение для тебя.
Пол-ночи провозился, но нашёл. почему-то это стало делом чести - открыть сию карту в редакторе

В общем, берёшь архив из аттача и тупо суёшь папку UI в корень варкрафта. После этого карта будет открываться любым вариантом редактора - как JNGP (любым), так и (даже!) стандартным.
Важно: локальные файлы должны быть разрешены.

Только там такой срач и дичь, что лучше реально своими руками с нуля писать...
ответ
~8gabriel8:
Не знаю почему, но после нескольких попыток открыть карту в mpq-редакторе, файлы текстур появились, я их заменил и карта открылась.
ответ
Warcraft 1 спрайты
Первая ссылка в гугле
Diablo 1 спрайты
Первая ссылка в гугле, тот же сайт
Warcraft 2 спрайты
Опять же, первая ссылка в гугле, опять тот же сайт
Автор тролль и провокатор, примите меры.
ответ
~8gabriel8:
Открывай *.MDX в mdlvis и сохраняй как *.MDL, там без мешанины.

23

» WarCraft 3 / Спрятать иконку

Похожие вопросы:

ответ
импортируй этот файл в карту и пропиши ему путь "units\CommandFunc.txt"
Данным способом можно убрать "Патруль" у всех юнитов на карте без исключения

для тех кому интересно, как это сделано
[CmdPatrol]
Art=CommandPatrol
Buttonpos=0,-11
и ссылочка на статью на хайве
ответ
без мемхака - нет

23

» WarCraft 3 / как сделать такой инвентарь?

Похожие вопросы:

ответ
Недавно был такой вопрос.
Перескажу, хоть и не поощряю вопросов, заданных без предварительного долгого лурка.
Легче всего реализуется через использование "уровня предмета" как категории и последующей триггерной проверки, чтобы в инвентаре не было двух предметов одного уровня (цикл+условие).
От себя добавлю, что можно создать предметы-болванки на каждый тип предмета, которые нельзя выбросить. Удалять их при поднятии предмета соответствующего типа (уровня) и добавлять при его выбрасывании (то же цикл+условие, только событие другое.)
ответ
отменять постройку юнита если технология уже ап
либо как сразу говорили через ап здания
где каждому твоему зданию будет соответствовать такое же здание но с дополнительным слотом
с продажей юнита открываешь доту и смотришь как там сделан спелл передать предметы у куры
он сделан как раз через продажу юнита
иначе никак
если не нравится пожалуйся богу об этом
или близардам
пусть выпустят новый патч специально для тебя
ответ
Сделать триггер для проверки кода, ну и организовать систему для его считывания и поверь это очень много всего, придется продумать.
Если коротко ты цифрами будешь (условно) сохранять своего героя, каждый набор цифр отвечает за какой то параметр героя, силу, ловкость, уровень, предметы и так далее, когда я говорю что это очень много всего придется продумать так и есть, тебе придется создать базу данных, для всех чисел и все проверять при введении команды, для защиты можно сверять суму чисел и проверять героя за которого играет игрок.
Мой тебе совет, не поленись и вбей в поиск "сделать команду save для карты варкрафт 3", на твое удивление там будет то что тебе нужно, уже на второй ссылке.
ответ
Действие:
Установить количество зарядов предмета = количество зарядов предмета -1.
Если количество зарядов предмета = 0, то удалить предмет.
ответ
Steal nerves:
ответы
Как объединить зелья лечения в одно с зарядом, если герой имеет одно в инвентаре и поднимает второе?
обычно используют "событие - юнит получает предмет", И на предмет, который вы получаете, ссылается переменная, которая называется item being manipulated. А юнит, который получает итем - Triggering Unit. Вы можете с помощью этой переменной итема узнать тип, сравнить. Потом циклом пробегаете по слотам (от 1 до 6), тут вся суть в одной команде триггерной (item in slot X, итем в слоте Х) и проверяете есть ли такой же итем (не забываем делать проверки, на то что этот предмет не равен item being manipulated и сравниваете не одинаковые ли типы). Если есть такой же (находите тот же тип что и item being manipulated), то от item being manipulated берете заряды и прибавляете к зарядам существующего, а потом item being manipulated удаляете. Недостаток: при заполненном инвентаре такая штука не будет работать.Не хватает свободного места.
код
цикл А от 1 до 6
if тип итема (item being manipulated) РАВНО тип итема (item in slot А) and item being manipulated НЕ РАВНО item in slot А then проверяете
set k = Charges remaining in ( item being manipulated) + Charges remaining in ( item in slot А) складываете заряды
Set charges remaining in ( item in slot А) to ( k) устанавливаете кол-во зарядов
Remove Item (item being manipulated) удаляете
endif
Есть гуишная проверка на наличие итема определенного типа в инвентаре, но она утечна. И лучше циклом прогонять.
Кстати выше пример, там вот дропают итем, зачем? чтобы проверить есть ли такой же итем. А то мб проверка на наличие итема определенного типа в инвентаре найти подобранный итем. А нам нужно знать, что есть еще один, кроме подобранного. Поэтому дропают. Только не понятно зачем создаете новый итем.
Проверка, на то что подобранный предмет имеет зарядов больше 0, говорит нам о том что это не обычный предмет.
есть статьи
Как зелье с зарядом разделить, если игрок перекладывает зелье с зарядом в другую ячейку инвентаря, если возможно, то разделение происходить должно только при нажатии какой-то клавиши?
можно перекладывать в другой слот. для этого ловят приказ. Короче смотрите системы CCS
там создают новый такой же предмет, и выделяют кол-во зарядов, деля поровну например. Абилкой например, попробуй сделать целевую активную абилку с целью предмет, указывай на инвентарь и дели.
Как это можно сделать покороче для множества разных типов предметов?
всмысле покороче? сделать под одну группу? есть же классификация. Я вот делаю так, что все предметы, которые с зарядами, должны иметь классификацию "с зарядами". Не помню точно как называется класс итемов.
Как правильно реализовать в инвентаре 7 слот?
если у героя заполнен инвентарь, то он может подобрать руну. Вот в доте система скрещивания. То же самое можно сделать и с зарядами. На земле у него лежат руны, при подборе руна исчезает. Но мы проверяем слоты, есть ли такой итем. Если есть, прибавляем заряды к существующему. Иначе создать новый. При дропе итема, оригинал подменяет снова на руну. В руну можно передать значения зарядов.
А также ограничения какие-то на количество зарядов нужно ставить или сама система выше какой-то планки не даст собирать?
до такого не доходил.
скинул примеры (хотя многие дурацкие, но делал здесь хгм в качестве ответов)
вот еще одна система hh